home *** CD-ROM | disk | FTP | other *** search
/ Disc to the Future 2 / Disc to the Future Part II Programmer's Reference (Wayzata Technology)(6013)(1992).bin / MAC / MPW_C / ARC_SGML / SGMLH / ACTION.H next >
Text File  |  1991-07-24  |  10KB  |  171 lines

  1. /******************************************************************************/
  2. /* ACTION.H: Symbols for all PCB action codes. */
  3. /******************************************************************************/
  4. /* CONACT.H: Symbols for content parse action names (end with '_').
  5.              There must be no conflict with PARSEACT.H, which
  6.              uses 0 through 19, or SGMLACT.H, which uses 20 through 32
  7.              (except that 31 - 32 can be defined here because they are
  8.              used only by PARSEPRO and do not conflict with SGML.C).
  9. */
  10. #define CIR_   31   /* Invalid character(s) ignored in MDS; restarting parse. */
  11. #define DTD_   32   /* Process DOCTYPE declaration. */
  12. #define DTE_   33   /* End of DOCTYPE declaration. */
  13. #define PEP_   34   /* TEMP: Previous character ended prolog. */
  14. #define DAS_   35   /* Current character begins data. */
  15. #define FCE_   36   /* Process free character (SR12-18, 21-30). */
  16. #define DCE_   37   /* Data character in element text; change PCB. */
  17. #define LAS_   38   /* Start lookahead buffer with current character. */
  18. #define LAM_   39   /* Move character to lookahead buffer. */
  19. #define LAF_   40   /* Flush the lookahead buffer; REPEATCC. */
  20. #define NED_   41   /* Process null end-tag delimiter. */
  21. #define NET_   42   /* Process null end-tag. */
  22. #define NST_   43   /* Process null start-tag. */
  23. #define NLF_   44   /* Flush lookahead buffer except for trailing NET or SR. */
  24. #define ETC_   45   /* End-tag in CDATA or RCDATA; treat as data if invalid. */
  25. #define SRMIN  46   /* Dummy for SHORT REFERENCES: srn = SRn - SRMIN. */
  26. #define SR1_   47   /* TAB */
  27. #define SR2_   48   /* RE */
  28. #define SR3_   49   /* RS */
  29. #define SR4_   50   /* Leading blanks */
  30. #define SR5_   51   /* Null record */
  31. #define DAR_   52   /* Flush data buffer after repeating current character. */
  32. #define SR7_   53   /* Trailing blanks */
  33. #define SR8_   54   /* Space */
  34. #define SR9_   55   /* Two or more blanks */
  35. #define SR10   56   /* Quotation mark (first data character) */
  36. #define SR11   57   /* Number sign */
  37. #define SR12   58   /* FCE CHARACTERS start here */
  38. /*             59   /* Space sequence begun; find its end. */
  39. #define BSQ_   60   /* Blank sequence begun; find its end. */
  40. /*             61      In use by PARSEACT.H */
  41. /*             62      In use by PARSEACT.H */
  42. /*             63      In use by PARSEACT.H */
  43. #define GTR_   64   /* EOB: get next buffer; repeat previous character. */
  44. #define SR19   65   /* Hyphen */
  45. #define SR20   66   /* Two hyphens */
  46. /******************************************************************************/
  47. /* GRPACT.H: Symbols for group tokenization action names (all alpha).
  48.              There must be no conflict with PARSEACT.H, which
  49.              uses 0 - 19.
  50. */
  51. #define AND    20   /* AND connector found. */
  52. #define DTAG   21   /* Data tag token group occurred (treat as #CHARS). */
  53. #define GRPE   22   /* Group ended. */
  54. #define GRP_   23   /* Group started. */
  55. #define NAS_   24   /* Name started in content model or name group. */
  56. #define NMT_   25   /* Name or name token started in name token group. */
  57. #define OPT    26   /* OPT occurrence indicator for previous token. */
  58. #define OR     27   /* OR connector found. */
  59. #define OREP   28   /* OREP occurrence indicator for previous token. */
  60. #define REP    29   /* REP occurrence indicator for previous token. */
  61. #define RNS_   30   /* Reserved name started (#PCDATA). */
  62. #define SEQ    31   /* SEQ connector found. */
  63. /******************************************************************************/
  64. /* LITACT.H: Symbols for content parse action names (end with '_').
  65.              There must be no conflict with PARSEACT.H, which
  66.              uses 0 through 19.
  67. */
  68. #define MLA_   20   /* Move character to look-aside data buffer. */
  69. #define LPR_   21   /* Move previous character to data buffer. */
  70. #define RSM_   22   /* Process record start and move it to data buffer. */
  71. #define FUN_   23   /* Replace function character with a space. */
  72. #define LP2_   24   /* Move previous two characters to data buffer. */
  73. #define MLE_   25   /* Minimum literal error: invalid character ignored. */
  74. #define RPR_   26   /* Remove previous character from data buffer; terminate. */
  75. #define TER_   27   /* Terminate the parse. */
  76. /******************************************************************************/
  77. /* MDACT.H: Symbols for markup declaration parse action names (all alpha).
  78.             There must be no conflict with PARSEACT.H, which
  79.             uses 0 - 19.
  80. */
  81. #define CDR    20   /* CD[1] (MINUS) occurred previously. */
  82. #define EMD    21   /* End of markup declaration. */
  83. #define GRPS   22   /* Group started. */
  84. #define LIT    23   /* Literal started: character data. */
  85. #define LITE   24   /* Literal started: character data; LITA is delimiter. */
  86. #define MGRP   25   /* Minus exception group (MINUS,GRPO). */
  87. #define NAS    26   /* Name started. */
  88. #define NMT    27   /* Name token started. */
  89. #define NUM    28   /* Number or number token started. */
  90. #define PEN    29   /* Parameter entity name being defined (PERO found). */
  91. #define PGRP   30   /* Plus exception group (PLUS,GRPO). */
  92. #define RNS    31   /* Reserved name started. */
  93. #define MDS    32   /* Markup declaration subset start. */
  94. /******************************************************************************/
  95. /* PARSEACT.H: Symbols for common parse action names (end with '_').
  96.                There must be no conflict with other action name
  97.                files, which use numbers greater than 19.
  98. */
  99. #define CRA_    1   /* Character reference: alphabetic. */
  100. #define CRN_    2   /* Character reference: numeric; non-char refs o.k.. */
  101. #define NON_    3   /* Single byte of non-character data found. */
  102. #define EOF_    4   /* Error: illegal entity end; resume old input; return. */
  103. #define ER_     5   /* Entity reference; start new input source; continue. */
  104. #define GET_    6   /* EOB, EOS, or EE: resume old input source; continue. */
  105. #define INV_    7   /* Error: invalid char terminated markup; repeat char. */
  106. #define LEN_    8   /* Error: length limit exceeded; end markup; repeat char. */
  107. #define NOP_    9   /* No action necessary. */
  108. #define PCI_   10   /* Previous character was invalid. */
  109. #define PER_   11   /* Parameter reference; start new input source; continue. */
  110. #define RC2_   12   /* Back up two characters. */
  111. #define RCC_   13   /* Repeat current character. */
  112. #define RCR_   14   /* Repeat current character and return to caller. */
  113. #define EE_    15   /* EOS or EE: resume old input source; return to caller. */
  114. #define RS_    16   /* Record start: ccnt=0; ++rcnt. */
  115. #define ERX_   17   /* Entity reference; start new input source; return. */
  116. #define SYS_   18   /* Error allowed: SYSCHAR in input stream; replace it. */
  117. #define EOD_   19   /* End of document. */
  118. /* Number way out of order to avoid recompilation. */
  119. #define PEX_   61   /* Parameter entity ref; start new input source; return. */
  120. #define DEF_   62   /* Data entity found. */
  121. #define PIE_   63   /* PI entity found (needed in markup). */
  122. #define LNR_   64   /* LEN_ error with extra REPEATCC. */
  123. /******************************************************************************/
  124. /* SGMLACT.H: Symbols for content parse action names (end with '_')
  125.               that are returned to SGML.C for processing.
  126.               There must be no conflict with PARSEACT.H, which
  127.               uses 0 through 19, or CONACT.H, which uses 34 and above.
  128.               (Note: 31 - 32 are also used in CONACT.H, but no conflict
  129.               is created because they are tested only in PARSEPRO.C, which
  130.               completes before SGML.C starts to examine those codes.
  131.               Also, when EOD_ is returned from PARSECON, it is changed
  132.               to LOP_.)
  133. */
  134. #define CON_   20   /* Normal content action (one of the following). */
  135. #define DAF_   21   /* Data found. */
  136. #define ETG_   22   /* Process end-tag. */
  137. #define MD_    23   /* Process markup declaration (NAMESTRT found). */
  138. #define MDC_   24   /* Process markup declaration comment (CD found). */
  139. #define MSS_   25   /* Process marked section start. */
  140. #define MSE_   26   /* Process marked section end. */
  141. #define PIS_   27   /* Processing instruction (string). */
  142. #define REF_   28   /* Record end found. */
  143. #define STG_   29   /* Process start-tag. */
  144. #define ETGP_  30   /* End-tag of plus exception (inclusion) element. */
  145. #define RSR_   31   /* Return RS to effect SGML state transition. */
  146. #define LOP_   32   /* Loop for new content without returning anything. */
  147. /******************************************************************************/
  148. /* TAGACT.H: Symbols for tag parse action names (all alpha).
  149.              There must be no conflict with PARSEACT.H, which
  150.              uses 0 - 19.
  151. */
  152. #define AVD    20   /* Delimited attribute value started: normal delimiter. */
  153. #define AVU    21   /* Undelimited value started. */
  154. #define ETIC   22   /* Tag closed with ETI. */
  155. #define NVS    23   /* Name of attribute or value started. */
  156. #define NASV   24   /* Saved NAS was actually an NTV. */
  157. #define NTV    25   /* Name token value started; get name and full value. */
  158. #define TAGC   26   /* Tag closed normally. */
  159. #define TAGO   27   /* Tag closed implicitly by TAGO character. */
  160. #define AVDA   28   /* Delimited attribute value started: alternative delim. */
  161. /******************************************************************************/
  162. /* VALACT.H: Symbols for attribute value tokenization action names (all alpha).
  163. */
  164. #define _NOP    0   /* No action necessary. */
  165. #define _INV    1   /* Invalid character; terminate parse. */
  166. #define _LEN    2   /* Length limit of token exceeded; terminate parse. */
  167. #define _NAS    3   /* Name started. */
  168. #define _NMT    4   /* Name token started. */
  169. #define _NUM    5   /* Number or number token started. */
  170. /******************************************************************************/
  171.